home *** CD-ROM | disk | FTP | other *** search
/ Revolution - Das Atari CD Magazin 1997 / Revolution - Das Atari CD Magazin 1.iso / software / anwendng / qed_397 / sourcen / scroll.s < prev    next >
Text File  |  1995-12-09  |  2KB  |  74 lines

  1.             .GLOBL COPYW
  2.             .GLOBL COPYB
  3.             .GLOBL MOVE
  4.             
  5.             .TEXT
  6. MOVE:    cmpa.l    a0,a1
  7.             bcc       COPYB
  8.             adda.w    d0,a0
  9.             adda.w    d0,a1
  10.             move.w    d0,d1
  11.             lsr.w     #3,d0
  12.             not.w         d1
  13.             and.w     #7,d1
  14.             add.w     d1,d1
  15.             jmp       sieben1(pc,d1.w)
  16. loop9:   move.b    -(a1),-(a0)
  17. sieben1: move.b    -(a1),-(a0)
  18.             move.b    -(a1),-(a0)
  19.             move.b    -(a1),-(a0)
  20.             move.b    -(a1),-(a0)
  21.             move.b    -(a1),-(a0)
  22.             move.b    -(a1),-(a0)
  23.             move.b    -(a1),-(a0)
  24.             dbra      d0,loop9
  25.             rts
  26. ;--------------------------------------------------
  27. COPYB:   move.w    d0,d1
  28.             lsr.w     #3,d0
  29.             not.w         d1
  30.             and.w     #7,d1
  31.             add.w         d1,d1
  32.             jmp       sieben2(pc,d1.w)
  33. loop10:  move.b    (a1)+,(a0)+
  34. sieben2: move.b    (a1)+,(a0)+
  35.             move.b    (a1)+,(a0)+
  36.             move.b    (a1)+,(a0)+
  37.             move.b    (a1)+,(a0)+
  38.             move.b    (a1)+,(a0)+
  39.             move.b    (a1)+,(a0)+
  40.             move.b    (a1)+,(a0)+
  41.             dbra      d0,loop10
  42.             rts
  43. ;--------------------------------------------------
  44. COPYW:   addq.w    #1,d0
  45.             lsr.w         #1,d0                ; Anzahl Worte
  46.             btst         #0,d0                ; gerade?
  47.             beq.b         weiter
  48.             move.w     (a1)+,(a0)+
  49. weiter:    move.w    d0,d1
  50.             lsr.w     #5,d0                ; DIV 31
  51.             not.w         d1                    ; Rest
  52.             and.w         #30,d1                ; MOD 31 aber immer gerade
  53.             jmp       sieben3(pc,d1.w)
  54. loop3:    move.l     (a1)+,(a0)+
  55. sieben3:    move.l     (a1)+,(a0)+
  56.             move.l     (a1)+,(a0)+
  57.             move.l     (a1)+,(a0)+
  58.             move.l     (a1)+,(a0)+
  59.             move.l     (a1)+,(a0)+
  60.             move.l     (a1)+,(a0)+
  61.             move.l     (a1)+,(a0)+
  62.             move.l     (a1)+,(a0)+
  63.             move.l     (a1)+,(a0)+
  64.             move.l     (a1)+,(a0)+
  65.             move.l     (a1)+,(a0)+
  66.             move.l     (a1)+,(a0)+
  67.             move.l     (a1)+,(a0)+
  68.             move.l     (a1)+,(a0)+
  69.             move.l     (a1)+,(a0)+
  70. weiter3:    dbra         d0,loop3
  71. ende1:   rts
  72. ;-------------------------------------------------------
  73.             .END
  74.